
# 面向对象-方法
"""
在类中，包括3种方法 ：类方法 、静态方法、实例方法

1. 实例方法 ：定义时第一个参数必须是对象自己 ，一般使用self

2. 类方法
    1）概念 ： 主要给类所使用的方法，叫类方法，在方法前加@classmethod
    2) 定义 ：在方法前加@classmethod
    3）调用 ：
        类名.类方法()
        对象名.类方法

3. 静态方法
    1）定义 ：在方法前加@staticmethod , 在静态中不能传入对象
    2）调用 ：
       1）类名.静态方法
       2）对象名.静态方法
"""

class Bug:

    mod = []

    # 类方法
    @classmethod
    def set_module(cls,mod_name):
        cls.mod.append(mod_name)

    def get_mod(self):
        return self.mod

    # 静态方法
    @staticmethod
    def bug_gz():
        print("这里主要说明bug的一些规则")


bug = Bug()
bug.set_module('登录')        # 通过对象去调用类方法
print(bug.get_mod())
bug.bug_gz()        # 通过对象调用静态方法

print("="*30)
Bug.set_module('注册')
print(Bug().get_mod())

Bug.bug_gz()        # 通过类调用静态方法